package com.itheima.service;

import com.itheima.entity.PageResult;
import com.itheima.pojo.Role;
import com.itheima.pojo.User;

import java.util.List;

/**
 * 用户服务接口
 */
public interface UserService {


    /**
     * 根据用户查询用户对象
     * @param username
     * @return
     */
    User findUserByUsername(String username);

    /**
     * 用户分页查询
     */
     PageResult findPage(Integer currentPage, Integer pageSize, String queryString);

    /**
     * 查询所有角色
     */
    List<Role> findAll();

    /**
     * 新增用户
     */
    void add(User user, Integer[] roleIds);

    /**
     * 根据用户id删除用户信息
     */
    void deleteById(Integer id);

    /**
     * 根据用户id 回显用户列表
     */
    User findById(Integer groupId);

    /**
     * 根据用户id 查询角色ids
     */
    List<Integer> findRoleIdsByUserId(Integer userId);

    /**
     * 编辑用户
     */
    void edit(User  user, Integer[] roleIds);



    /**
     * 密码修改
     */
    void upPassword(Integer id, String password2);

    /**
     * 查询所有的用户
     */
    List<User> findUsers();
}
